Score and suggestion generation for a job seeker where the score includes an estimated duration until the job seeker receives a job offer

ABSTRACT

Methods, systems and computer program products are provided for generating a feasibility score for a job search and for generating a suggestion for enhancing the score. In one method, one or more computing devices receive, over a network, a data object that is associated with a user who is engaged in a search for employment. The data object includes a résumé of the user and a requirement that is associated with the search. The computers calculate, based on the data object, a score that indicates a likelihood of receiving an offer for an employment position that satisfies the requirement. The computers generate a suggestion that identifies how the score may be increased. The computers send the suggestion over the network to a computing device of the user.

CROSS-REFERENCE TO RELATED APPLICATIONS; BENEFIT CLAIM

This application is a Continuation of U.S. patent application Ser. No.14/688,955, filed Apr. 16, 2015, which is a Continuation of U.S. Pat.No. 9,047,611, issued Jun. 2, 2015; the entire contents of both of whichare hereby incorporated by reference for all purposes as if fully setforth herein. The applicants hereby rescind any disclaimer of claimscope in the parent application or the prosecution history thereof andadvise the USPTO that the claims in this application may be broader thanany claim in the parent application.

TECHNICAL FIELD

The present disclosure generally relates to system and methods forsuggesting a way for a user to increase a score associated with a résumésubmitted by the user.

BACKGROUND

The advent of the Internet has proved to be a boon to address one ormore requirements of a user. Internet provides easy and fast access tomeet the needs of a host of requirements that the user may have, likethat of booking air tickets and making hotel reservations to a traveldestination, buying or selling any consumer product, searching for asuitable life partner, looking for employment, and the like. The user(such as a job seeker) may submit his requirements or attributes bymeans of one or more data objects that may include his/her requirementspertaining to acquiring a particular service, job and/or desiredproduct. On the other end, a complementary user who provides or offersthe services, jobs and/or products to match the one or more requirementsof user also submits his requirements in the form of one or more dataobjects to an intermediate platform.

Known systems may match the requirements of the user with that of thecomplimentary users either manually or by means of machine learningalgorithms. Further, these systems may also allow the user to analyzeand select the submitted complementary user's data object that suitablysatisfies the user's requirements.

However, if the user's requirements do not match or appropriatelycorrelate to the requirements of the complementary user that is offeringthe corresponding job, service, and/or product, the user is simplyrejected on those grounds. The user may not be informed about the basisof the rejection. Further, in the case of other users who may becompeting for the same requirement, the user may not be informed aboutthe cause of the competing users' selection and/or rejection. Thus, theuser may lack the information about the various factors that he/she maymodify in order to enhance the chances of achieving his or her goals.

SUMMARY

In particular embodiments, the present invention provides methods,systems and computer program products are provided for generating afeasibility score of a job search and for generating a suggestion forenhancing the score. In one method, one or more computing devicesreceive, over a network, a data object that is associated with a userwho is engaged in a search for employment. The data object includes arésumé of the user and a requirement that is associated with the search.The computers calculate, based on the data object, a score thatindicates a likelihood of receiving an offer for an employment positionthat satisfies the requirement. The computers generate a suggestion thatidentifies how the score may be increased. The computers send thesuggestion over the network to a computing device of the user.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example of network environment in which particularimplementations of the invention may operate;

FIG. 2 is a block diagram of enhancing module in an example embodimentof the present invention;

FIG. 3A is an example data object submitted by a user, in an exampleembodiment of the present invention;

FIG. 3B illustrates a table that depicts one or more extractedparameters associated with the data object, in an example embodiment ofthe present invention;

FIG. 3C illustrates a table that depicts the score computation for thedata object, in an example embodiment of the present invention;

FIG. 3D illustrates a table that depicts a feedback given to the user toenhance one or more computed scores associated with the data object, inan example embodiment of the present invention;

FIG. 4 is a flowchart illustrating an example method for enhancing oneor more scores associated with data objects; and

FIG. 5 is a schematic diagram illustrating an example computing systemfor enhancing one or more scores associated with the data objectsaccording to one embodiment.

DETAILED DESCRIPTION

Example Network Environment

FIG. 1 illustrates a network environment 100 in which particularimplementations of the invention may be deployed, according to oneembodiment. Network environment 100 includes network-based serviceprovider 102, one or more other data sources 104, one or more clientnodes 106 and a network 108. Network-based service provider 102 includesan application server 110, an enhancing module 112, and a userinformation database 114. Network 108 generally represents one or moreinterconnected networks, over which network-based service provider 102,other data sources 104, and client nodes 106 can communicate with eachother. Network 108 may include packet-based wide area networks (such asthe Internet), local area networks (LAN), private networks, wirelessnetworks, satellite networks, cellular networks, paging networks, andthe like. A person skilled in the art will recognize that network 108may also be a combination of more than one type of network 108. Forexample, network 108 may be a combination of a LAN and the Internet. Inaddition, network 108 may be implemented as a wired network, or awireless network or a combination thereof. Client nodes 106 arecommunicatively coupled to network 108 via network-based serviceprovider 102 or any other suitable methods known in the art.

Client Nodes

Client nodes 106 are computing devices from which a user accesses theservices provided by network-based service provider 102. In oneembodiment, the user accessing client nodes 106 may be an individual oran organization. Client nodes 106 have the capability to communicateover network 108. Client nodes 106 further have the capability toprovide the user an interface to interact with the services provided bynetwork-based service provider 102. Client nodes 106 may be, forexample, a desktop computer, a laptop computer, a mobile phone, apersonal digital assistant, and the like. Client nodes 106 may executeone or more client applications such as, without limitation, a webbrowser to access and view content over a computer network, an emailclient to send and retrieve emails, an instant messaging client forcommunicating with other users, and a File Transfer Protocol (FTP)client for file transfer. Client nodes 106, in various embodiments, mayinclude a Wireless Application Protocol (WAP) browser or other wirelessor mobile device protocol suites such as, without limitation, NTTDoCoMo's i-mode wireless network service protocol suites, EDGE, and thelike.

Network-Based Service Provider

Network-based service provider 102 is a network addressable system thatprovides a means to the user to address his requirements that arerelated to one or more services and/or products. The one or moreservices and/or products are accessible over network 108 to the user viaclient nodes 106. The user may submit his requirements by the means ofone or more data objects. The data objects may be one of portabledocument file, word file, text file, excel file, an online form, an XMLfile (or other structured document), or a scanned image. Further, thedata objects may include one or more requirements and/or informationassociated with the user. In one embodiment, the user may be required tohave an account with network-based service provider 102 in order tosubmit the data objects. Application server 110 may be responsible forcreation and handling of the user account. Application server 110 mayinclude a registration and authentication server (not shown in FIG. 1)which facilitates the registration of new users, and authenticatesexisting users at sign-in. Further, the registration and authenticationserver may use security protocols such as Secure Sockets Layer (SSL),Transport Layer Security (TLS) or GnuTLS.

On registration, application server 110 may ensure that the user accountdetails are stored in user information database 114. For example, if theuser has the requirement of availing of a holiday package to a desireddestination, the user may first create an account maintained bynetwork-based service provider 102 and then may lookup the variouspackages available through the one or more holiday package serviceprovides.

Subsequent to registration, application server 110 may be responsiblefor invoking enhancing module 112. Enhancing module 112 may receive thedata objects from application server 110. The data objects may includeinformation associated with one or more requirements of the user and mayfurther include, but not be limited to, attributes and/or criteriaassociated with the user. Enhancing module 112 may extract one or moreparameters based on the information contained in the data objects.Subsequently, enhancing module 112 may compare the information and/orrequirements included in one or more data objects of the user with thatof competing users. The competing users are selected based at least inpart on the similarity of requirements included in the data objects ofthe user and the data objects of the one or more competing users. In oneembodiment, enhancing module 112 may compute one or more scores based atleast in part on the computed score and the extracted parameters. In anembodiment, the one or more scores include, but are not limited to, anabsolute score and a relative score associated with the data objects. Inone embodiment, the relative score may be based on the extractedparameters and the comparison data. Similarly, the absolute score may bebased on the availability of the services and/or products correspondingto the requirements of the user, as extracted from the one or more dataobjects, received from the user. The score may represent a standing orlisting to the user which represents a chance the user may have toattain his requirements through network-based service provider 102.Moreover, in one embodiment, enhancing module 112 may provide feedbackto the user to change one or more parameters to enhance his score andthus the stand to attain his/her requirements.

Other Data Sources

Enhancing module 112 may also obtain additional information from otherdata sources 104. Other data sources 104 are publicly available sources,or online services, which may store additional information. Theadditional information may include, without limitation, historicalparameters, social parameters, political parameters, socio-politicalparameters, environmental parameters, locational parameters, economicparameters, skill parameters or any other general, comparative orstatistical information such as climatic conditions, consumer demands,and the like that may be directly or indirectly associated with theinformation contained in the data objects. The additional informationmay also include, information associated with various organizations andindustries, stocks, economy conditions and the like. Example publiclyavailable other data sources 104 include, without limitation, UnitedStates Bureau of Labor Statistics, and PayScale Inc. for obtainingstatistical data of wages, employee benefits, and employment costs indifferent geographic regions, different industries and differentpositions in an industry; educational institution rankings such as thoseprovided by U.S. News and World Report; and top employer rankings suchas those provided by Fortune magazine and Forbes magazine. Exampleonline services include social networking websites such as LinkedIn, forobtaining references, special skills, and career objectives of the user(using the user's profile information); and online finance websites suchas Yahoo! Finance for obtaining insights on the user's interest in hisfuture professional career and academic pursuits (using page viewingstatistics). Further, other data sources 104 may include governmentwebsites, meteorological websites, or other information repositoriesthat store publicly available data and may have an impact on theeconomic, environmental, geographical or political conditions.

Although FIG. 1 illustrates the foregoing systems as separate systems,the functionality represented by each system may be combined into othersystems. Furthermore, the functionality represented by each depictedsystem may be further separated. Still further, implementations of thepresent invention may operate in network environments that includemultiples of one or more of the individual systems and sites disclosedherein. In addition, other implementations may operate in networkenvironments where one or more of the systems described herein have beenomitted.

Enhancing Module

FIG. 2 is a simplified block diagram of enhancing module 112 inaccordance with one embodiment. As shown in the FIG. 2, enhancing module112 may include a receiving module 202, an extraction module 204, a rulegenerator 206, a comparison module 208, a computing module 210, afeedback generator 212 and a knowledge base 214. Receiving module 202may receive the one or more data objects from application server 110.The user may have submitted the data objects with application server110, by means of one or more web applications provided by applicationserver 110. In one embodiment, the user may be an individual, acorporation, organization or any other entity. Further, the data objectsmay include one or more requirements. For example, in case of the userbeing an individual, the requirements of the user may include, but notlimited to, to acquire a suitable job position, to buy a consumerproduct, to buy/sell services and/or products in an online environmentand the like. Additionally, in case of the user being an organization,the requirements of the user may include, but not limited to, to acquirea suitable employee as per a vacant job position, provide suitableholiday packages to tourists, sell available products or services tocustomers, and the like. Hence, the requirements submitted by the usermay differ as per the needs and selection criteria of the user.Moreover, the data objects may also include one or more informationalattributes associated with the user, such as, but not limited to, socialcontacts, qualifications, business motive, products information, contactdetails and the like.

In one embodiment, the data objects may include the requirements of theuser to avail of services and/or products. Further, the user may alsoinclude one or more conditions, restrictions and/or criteria that theuser may impose in order to meet his requirements. For example, if theuser intends to go on a holiday to a particular destination and wants tomake online hotel reservations for the same, the user requirements maybe to reserve an available room that meets certain criteria like bookingof a room that has a sea-facing view, certain cost considerations orcertain other conditions such as the hotel location and the like.

In one embodiment, the user may upload the data objects through anapplication provided by network-based service provider 102. The dataobjects may be, without limitation, a word processor document, aPortable Document Format (PDF) file, a text file, a Hyper-Text MarkupLanguage (HTML) file, a Tagged Image File Format (TIFF) image or aPortable Network Graphics (PNG) image. Further, the data objects may be,without limitation, an electronic version of the user's résumé, theuser's job hiring requirements, the user's desired holiday destinations,the user's personal details for online dating sites, the products and/orservices the user desires to purchase or sell, and the like.

In one embodiment, the structure in which the information is containedin the data objects does not adhere to any common format. Moreover, theinformation contained in the data objects submitted as one or moredigital files pertains to the requirements of the user in order to availof certain services as per the user's need. For example, the user mayupload his user profile on an online dating site, stating all his familydetails, health details, professional details and virtues in order tofind a suitable spouse. The information of these data objects may be inany order or format that need not essentially be standardized for allsuch user profiles.

However, for analyzing the information and/or requirements associatedwith the user to that of one or more competing users and/orcomplementary users, the competing users' requirements are of the samenature as that of the user being considered, while the requirements ofthe complementary users may be complimental to that of the user. Thus,the unstructured format of the information contained in the data objectsis required to be converted to a structured format, to retrieve theinformation and or requirements included in the data objects.

In an embodiment, extraction module 204 extracts the informationincluded in the data objects. In one embodiment, extraction module 204may employ an electronically executed method, such as, but not limitedto, a machine learning algorithm, fuzzy algorithm, neural networks,supervised learning, unsupervised learning, and the like; for convertingthe unstructured format of the data objects to a structured format andthus extract the information from the data objects. For example, user'sinformation in a résumé may contain applicant experience and educationin a chronological order, or reverse chronological order. Additionally,the extraction may also be done manually. Machine learning is ascientific discipline concerned with the design and development ofalgorithms that allow computers to learn based on data, such as fromsensor data or databases.

In another embodiment, the user may provide the information in a webform hosted on application server 110. The information provided in theweb-form may follow a common format. The format of this web-form mayvary depending on the requirements of the user. Since, the informationis in a structured format, extraction module 204 does not necessarilyemploy the machine learning algorithm.

In an embodiment, extraction module 204 may extract one or more internalparameters based on the information included in the data objects. In oneembodiment, extraction module 204 may employ a suitable machine learningalgorithm to extract the internal parameters. In another embodiment, theinternal parameters can be extracted manually. The internal parametersare those parameters that are essential to the data object and arederived from the data objects submitted by the user. The internalparameters may be considered as strong points, attributes or assets ofthe data object that are essential to describe the requirements of theuser. Further, internal parameters are those features that can be usedto distinguish the information contained in the data object of the userfrom that of data objects that belong to the same domain but aresubmitted by the competing users. The internal parameters may eitherhave a positive or negative impact on the requirements of the userstated his data object. For example, in case of the user being anapplicant for a job, the user may submit the data object as his/herrésumé. In this situation, the internal parameters may include, but notlimited to, educational qualification, current job status, past jobexperience, salary requirement, location preferences, travel willingnessor willingness to change location, expected position, reputation of theprevious employer and the like. In an embodiment, the positive impact ofthe internal parameters may be considered if the user has worked with areputed organization, or is willing to change location, has worked on acombination of technologies and his acquired skills through educationand previous job experience is in demand. Further, various paperpresentations, awards, or association with recognized councils may alsobe considered as positive impact. The various internal parameterspertaining to the application for a job are explained in conjunctionwith FIG. 3. In one embodiment, the user may submit a new attributeand/or parameter manually and extraction module 204 may use the newadded attribute and/or parameter to compute one or more scoresassociated with the data objects of the user.

In one embodiment, the internal parameters may be updated or refined ina pre-defined period of time. The internal parameters are stored in aninternal parameter database 216 of knowledge base 214. Knowledge base214 may further include an external parameter database 218 and rule basedatabase 220. Enhancing module 112 includes a domain analyzer 222 thatsuitably identifies the domains and sub-domains to which the dataobjects pertain. Rule generator 206 is used to convert the one or moreextracted parameters into suitable rules such that the rules are storedin rule base database 220. Knowledge base 214 may be implemented usingany known database solution such as a Relational Database ManagementSystem (RDBMS), an Extensible Markup Language (XML) database, a flatfile database, and the like.

In one embodiment, extraction module 204 may also extract one or moreexternal parameters based on the information contained in the dataobject. The external parameters include all those parameters that maydirectly or indirectly have an impact on the data objects submitted bythe user. The external parameters may include, but are not limited to,social parameters, political parameters, socio-political parameters,environmental parameters, locational parameters, economic parameters,statistical comparative parameters, skill parameters, and the like thatare relevant to the domain to which the data objects belongs. Further,these external parameters may either enhance or hamper the chances ofthe requirements of the user being met. In an embodiment, extractionmodule 204 may extract the external parameters from one or more otherdata sources 104 like the internet, publicly available data stores, etc.For example, if the user intends to book online tickets for a movie, therating given to the movie, extracted from public databases like theInternet Movie Database.COPYRGT. contribute to the external parametersthat impact the user's needs of buying a movie ticket of a movie whichhas performed well at the box-office. The external parameters arederived from the knowledge domains and sub domains identified by domainanalyzer 222.

In one embodiment, domain analyzer 222 may identify one or moreknowledge domains and/or sub domains that the data objects may belongto. The knowledge domains are identified based on the internalparameters of the data objects, extracted by extraction module 204. Theidentified knowledge domains may be used to accordingly judge therelevant other data sources 104 that are pertinent to the given dataobjects. For example, if the user intends to purchase a consumerproduct, all the entities that offer that consumer product for sale aswell as all other users in search of the same consumer product maybelong to the same knowledge domain.

Domain analyzer 222 makes use of an electronically executed method tosuitably distinguish between the relevant knowledge domains and/or subdomains to those that are irrelevant for the given object. In oneembodiment, domain analyzer 222 may also make use of any other methodsuch as machine learning algorithms, fuzzy algorithms, neural networks,and the like. These knowledge domains may include one or more domainsand/or sub domains that are distinct or may overlap in terms of one ormore parameters. Further, domain analyzer 222 is used, but is notlimited, to group the data objects into suitable classes depending onthe domains that they belong to. This classification of the data objectsinto relevant classes is performed by the machine learning algorithm andfacilitates in identifying one or more data objects that are related toeach other. Thus, the user's data object and the one or more competingusers' data objects may be grouped together under the same class basedon the similarity of requirements contained in the data objects. Thisallows the comparison of data objects that are submitted for the samepurpose by a plurality of users. Further, both the user's data objectand the complementary user's requirement may be categorized under thesame class, thereby allowing two or more distinctly comparable dataobjects to be grouped together. Thus, the data objects that belong tothe same class include data objects that have complementary requirementsas well as data objects that have the same requirements. For example,the data object of user who uploads his résumé will be grouped in thesame class as the organization's data object that states the employer'srequirements; as well with the data objects of other users competing forthe same job position. Domain analyzer 222 may invoke extraction module204 to extract the external parameters from other data sources 104 basedon the knowledge domains identified. For example, if the user intends tovisit a particular tourist location, the user profile and the hotelsoffering accommodation located near the desired tourist location belongto the same class. The discount offered to the user based on hisprevious lodging at the same hotel and the current season of travelserve as external parameters to be considered while making the roomreservations.

Further, the external parameters also include the statisticalcomparative analysis of the requirements of other data objects submittedby competing users that pertain to the same domain and/or sub domain ofthe user. This comparative analysis data may be gathered over time. Thisextracted comparative analysis data may be used to compare the user'sdata object with that of one or more competing user data objects.

In one example embodiment, when the user submits one or more dataobjects to apply for a job, the external parameters may include, but arenot limited to, economic factors, socio-political conditions, jobconditions in the market, natural or environmental factors, locationaladvantages, seasonal impact on hiring, competition and the like. Thevarious external parameters pertaining to the application for a job areexplained in conjunction with FIG. 3

Additionally, in an embodiment of the present invention, the historicalinformation pertaining to the same domain as the data objects may alsobe considered a parameter for the calculation of the one or more scoresassociated with the data object. In various embodiments of the presentinvention, this information may be optional. The historical informationgenerally pertains to, but is not limited to, statistically analyzeddata that dictates a trend in a particular activity, market orcompetitive analysis, or past data analysis. Historical information issuitably extracted and stored in external parameter database 218. Forexample, for online auctions the past records of the products auctionedand their respective rates, including the buying trends of certainfrequent purchasers serve as historical information.

In an embodiment, inputs and/or recommendations provided by the userhimself and/or other users may also be considered in the calculation ofthe one or more scores associated with the data object. In an exampleembodiment, the user may provide some additional inputs other than thedata objects to improve the definition of the data objects. Moreover,the social contacts of the users may also provide recommendation and/orinputs about the user and/or complementary users who may fulfill therequirements of the user. This input and/or recommendations provided areoptional and may be subject to user constraints. Further, the inputand/or recommendations are stored in external parameter database 218.For example, in case of a job scenario, the recommendation of a previousemployer for the user, previous placement history of the user, user'sself rating, and user's input about the complementary user(organization) strength or weakness may also be considered as parametersfor the score computation.

In one embodiment, rule generator 206 may convert the extracted internaland external parameters into one or more rules to make suitableinferences on the extracted information through these parameters.

Rule generator 206 is used to generate one or more rules that arise fromthe dependencies that exist in the parameters that affect the dataobjects. These one or more dependencies may exist between one or moreinternal parameters, external parameters, and further optionally betweenhistorical parameters and/or recommendations, or any combinationthereof. The parameters affecting the data objects are suitablyretrieved from the internal parameter database 216 and externalparameter database 218 of the knowledge base. Additionally, theinter-relationship or dependencies may be formed relating to theparameters that pertain to a single data object or a collection of oneor more data objects that belong to the same class identified by domainanalyzer 222. In one embodiment, an electronically executed method maybe used to derive these sets of rules, by taking into consideration therelationships that may arise, both directly and indirectly, from theparameters that may affect the data object or group of data objects thatpertain to the same class or both. These rules may be generated by themapping of the extracted parameters, which includes internal andexternal parameters, and inferred dependencies that are stored in rulebase database 220 of knowledge base 214.

In one embodiment, the rules may be generated manually by a systemadministrator and stored in rule base database 220.

In one embodiment, comparison module 208 may compare the one or moredata objects of the user with that of the competing users for the samerequirements. In one embodiment, the data objects are compared based onthe information extracted from one or more internal and externalparameters. The comparison of these data objects may take place, but notlimited to, by comparing the one or more data objects that belong to thesame domain and/or sub domain identified by domain analyzer 222.

In one embodiment, computing module 210 may compute the one or morescores based at least on one of the comparison data received fromcomparison module 208 and/or from the information extracted from the oneor more internal parameters, external parameters, optionally includinghistorical parameters and/or recommendations. Computing module 210 mayretrieve the rules generated and stored in rule base database 220 tocompute an absolute score and a relative score. Further, the extractedparameters may be retrieved from the internal parameter database 216,external parameter database 218, or any combination thereof.

In one embodiment, the relative score associated with the data objectsis calculated based on the internal parameters, external parameters, andthe comparison data received from comparison module 208. Thus, therelative score of data objects may provide the standing of the dataobjects submitted by the user to that of other data objects submitted bycompeting users that belong to the same class as that of the user's dataobject. The relative score may thus be used to compare the user's dataobject with that of competing user's data objects. Thus, relative scoreassociated with the user's data object is indicative of the likelihoodof achieving the requirement included in the data object of the user.For example, if the user's data object has a score of 75, while that ofhis competitor is 80, then the user has lesser chances of fulfilling hisrequirement as compared to his competitor.

In one embodiment, the absolute score may be the measure of the degreeby which two comparable data objects, namely the user requirement withthe available service and/or product corresponding to the userrequirement, are similar. The absolute score is calculated based atleast in part on a comparison between the requirements included in thedata objects of the user and the complimental requirements included inthe data objects of the complimentary users. Moreover, in oneembodiment, absolute score may be calculated based on, but not limitedto, the extracted parameters that may belong to a group of one or moredata objects that may belong to the same class. Hence, the absolutescore of the data object may provide the measure of how closely theuser's requirements may be matched to the corresponding complementaryrequirements of another user (who provide the service and/or product tomatch the user requirement). In other words, the absolute score providesan indication of a likelihood of how the user fares against thecomplimentary requirements.

In one embodiment, the one or more scores associated with the dataobject may have a numerical value or may be expressed as a percentage.Further, the scores may also be expressed as a percentile. Additionally,the scores may lie within a pre-defined range such that the user'sscores associated with the data object may be accordingly categorized asa good score, average score or poor score. Further, the user may also benotified about his rank that is suggested by how high his scores are ascompared to that of other users. For example, for a score range of 300points to 900 points, a user's data object having a score of 850 pointsis considered to be a good score.

In one embodiment, computing module 210 may determine the functionpoints and suitably assign weighting to the extracted parameters thatinclude but is not limited to, the external parameters, internalparameters, optionally including historical parameters and/orrecommendations, or any combination thereof. These function points arethose extracted parameters, that include internal parameters, externalparameters, historical parameters, recommendations, or combinationthereof, that may be required in computing the one or more scoresassigned to the data objects. In one embodiment, the function points maybe determined by the user. In another embodiment, computing module 210automatically determines the function points. In one embodiment,computing module 210 may employ an electronically executed method and/ormanually identify the function points that may impact the computation ofthe one or more scores. The weighting of the extracted parameters maydetermine the amount of weight or influence given to the extractedparameters. In one embodiment, the weighting may differ for thecontribution of the same extracted parameters in the calculation of theabsolute score and the relative score. Additionally the weighting may begiven in terms of an absolute value, residing within a pre-definedrange, or by a percentage value. Thus, the computing module 210 mayassign a value to the internal parameters, external parameters,historical parameters, recommendations, or all, that belong to anindividual data object or a group of data objects.

Additionally, the values may be numerical values, lying within apredefined range or a percentage or a percentile value. The one or morescores are calculated dynamically and may change under certainconditions. These conditions include change in the external parametersdue to reasons outside the user's scope, change in the weighting givento the parameters, change in the internal parameters within the user'sscope, which may arise due to the feedback given by feedback generator212 in order to improve the one or more scores computed, change in therecommendation provided by other users, etc. For example, in the case ofjob hiring, the employee may decide on designating a weight of 60 forthe internal parameters and 40 for the external parameters. Further, theweight may also be provided to the historical factors and one or moreinputs/recommendations provided by other users.

In one embodiment, computing module 210 may calculate a gross scorewhich may be the summation of the average of the absolute score and therelative score.

In one embodiment, feedback generator 212 may analyze the one or morescores computed by computing module 210 and provide a listing of theinternal parameters, external parameters, optionally includinghistorical parameters, recommendations, or all, that need to bemodified, improved, added or removed, in order to improve the one ormore scores associated with the data object. For example, in the casewhen the user desires to secure a particular job position, the feedbackgenerator may inform the user that on acquiring a particular skill set,the user may improve the chance of acquiring his desired post.

Feedback generator 212 may access the one or more scores computed bycomputing module 210 to suitably analyze the impact of the variousparameters on the scores associated with the data object. Further,feedback generator 212 may access internal parameter database 216,external parameter database 218 and rule base database 220 to determinehow the scores may be improved by analyzing the dependencies that existamongst one or more internal parameters, external parameters, optionallyincluding historical parameters, recommendations, or any combinationthereof. An electronically executed method such as, but not limited to,a machine learning algorithm, fuzzy algorithms, neural networks,supervised learning, unsupervised learning, and the like; may be used toanalyze these inter-relationships amongst parameters pertaining to thesame data object, or the dependencies that arise due to the comparisonbetween two or more distinct data objects that belong to the same class.

Further, feedback generator 212 also considers the weighting assigned tothe various parameters, in order to determine the changes that need tobe made to one or more parameters to improve the user's chances offulfilling his requirement as compared to that of other users that havethe same requirement. Improvement of the relative score may allow theuser to increase his overall user profile standing by increasing thechances of the user of fulfilling his requirement as compared to that ofthe competing users. For example, the user may be informed that oncompleting a particular course of study, his relative score may increasefrom 75 to 82, thereby increasing his chances of acquiring a suitablejob, as compared to that of the competing user's data object which mayhave a relative score of 80.

Additionally, enhancing the absolute score computed for the data objectsprovides a means to the user to increase his likelihood of matching hisrequirements to the corresponding requirements of the complementaryuser. Feedback generator 212 may provide an option to change on or moreparameters included in the data object of the user to enhance theabsolute score and thus the likelihood of user fairing against therequirements included in the data object of the complimentary users. Forexample, improving the absolute score of the user desiring a particularjob position from 60 to 80 will increase his chances of meeting hisneeds based on the available jobs pertaining to his requirements.

Further, feedback generator 212 may provide the listing of allparameters that may be responsible for affecting the one or more scoresof the data objects. The parameters may contribute to the scorecalculation by either enhancing or hampering the user's chances offulfilling his requirement. Further, the user may be given the option tomodify and/or remove one or more of the listed parameters and weightingassociated with the same. Additionally, one or more new parameters andrelated weighting may also be added by the user manually.

Additionally, in an embodiment, feedback generator 212 may also suggestthe best match to the user's requirement, by judging the minimummodifications that need to be made in order to achieve the best matchjudged by a high absolute score, made to compare one or more distinctlycomparable data objects that lie in the same domain. For example, theuser may be informed that with his cost considerations, he will be ableto go for a ten day vacation as per his requirement to San Jose insteadof Los Angeles.

Further, the feedback generated by feedback generator 212 may provide alisting and/or grouping of the various available options with respect tothe services and/or products desired by the user, such that the listingprovided is in descending order of degree by which the available optionsmay fit the requirements of the user.

Further, as per an embodiment, the user may be informed that on makingthe suitable improvements in the submitted data object, the user wouldbe able to satisfy his requirements service within a specified duration.For example, the user may be informed that on acquiring a particularskill set, it is estimated that he will be hired to his desired jobposition within a period of two months.

Further, as per an embodiment, the feedback provides an option to theuser to incorporate the one or more changes, which may includesuggestions to include certain internal parameters, remove certaininternal parameters and/or modify certain internal parameters of thedata object submitted by the user in order to improve the one or morecomputed scores. In one embodiment, feedback generator 212 may itselfcompute all the probable scores by automatically changing the variousparameters.

In another embodiment, feedback generator 212 may receive the modifieddata objects from the user and re-compute the score associated with thedata objects based on one or more changes in the internal parameters, orchange of value assigned to the parameters. The change of the parametermay be due to user amendment, change in the external parameters, changeof weighting given to the parameters considered as function points, etc.

FIG. 3A illustrates an exemplary data object 300 submitted by the user.In an example embodiment of the present invention, data object 300 is adigital file that contains the user's requirements. In the exampleembodiment, the user is an individual, who has submitted data object 300for a suitable job position. Data object 300 states the one or morerequirements of the user. Moreover, the one or more restrictionsprovided by the user include certain preferred companies, expectedposition, salary considerations, location considerations and mode (fulltime or part time). These restrictions may act as conditions imposed bythe user in order to meet his requirements. Data object 300 alsocontains the user's personal details, contact details, educationalqualifications, skill set, additional professional courses, workexperience and current job status. This information contained in dataobject 300 distinguishes the user from other competing users. Thus, thisinformation includes the attributes possessed by the user which mayeither have a positive or negative impact on the requirement of theuser. The combination of technological skills and his past experience inthe same field prove to be one or more assets for an expected positionthe user wishes to acquire. Further, the reputation of the user'sprevious employer may also increase his chances of acquiring hisrequirements. Data object 300 also includes the past employer'srecommendation and a disclosure by the user stating his self rating. Therecommendation provided by the past employer may assist in providing asense of the capabilities of the user.

In an embodiment of the present invention, extraction module 204 mayemploy an electronically executed method to scan and extract one or moreparameters from data object 300 submitted by the user.

FIG. 3B illustrates a table 302 that includes the extracted parametersassociated with data object 300. Extraction module 204 may extract theone or more internal parameters from data object 300 submitted by theuser. In this example embodiment, the internal parameters may includeuser's requirement of acquiring a job, the one or more user'sconditions/restrictions, user's salary requirements, job location,travel willingness, past experience, educational qualification, any gapsin career, current job status, expected position and self rating. Theseinternal parameters are stored in internal parameter database 216 ofknowledge base 214. These internal parameters may either have a positiveor a negative impact on the job acquiring chances of the user. Further,these internal parameters are subject to modification by the user at alater stage, since the internal parameters are subject to the user'sconsiderations. Further, domain analyzer 222 may analyze data object 300and ascertain the domains to which data object 300 belongs to. In thisexample embodiment, data object 300 belongs to the job acquiring domainin the information technology sector. Based on this ascertained domain,extraction module 204 may search other data sources 104, which in thiscase may include company websites, and other online services related tomarket analysis, current economic condition and job acquiring trendspertaining to the individual's desired sector. Further, otherstatistical data related to the lay offs in the given sector, directionof movement of related organizations in recent times, competition interms of demand-supply ratio, mass hiring done by companies in therelated sector may also be extracted from the relevant other datasources 104. Further, the impact of the season of applying may also beconsidered. Also, the rarity of the skill set possessed by the user interms of the current jobs in demand also serves as a suitable parameterwhich may assist in job acquisition. Accordingly, extraction module 204may extract one or more relevant external parameters from theseidentified other data sources 104 and store these parameters in externalparameters database 218. Further, the historical information related tothe trend in the user's field of expertise is also extracted and storedin external factor database 218. Moreover, the recommendations providedby the user's past employers are also extracted and stored in externalfactor database 218.

FIG. 3C illustrates a table 304, which depicts the score computation ofdata object 300 submitted by the user. Rule generator 206 may retrievethe internal parameters, external parameters, the historical parametersand the recommendations stored in knowledge base 214. Further, in anembodiment of the present invention, comparison module 208 may comparedata object 300 of the user with that of the competing users' based onthe one or more extracted parameters. Comparison module 208 may use anelectronically executed method to generate dependencies that map the oneor more extracted parameters with each other, and thus forms one or morerelationships amongst the extracted parameters. Further, computingmodule 210 may compute a relative score associated with data object 300of the user. The relative score may be based on one or more extractedparameters associated with data object 300 and the comparison datareceived from comparison module 208. The relative score may be computedbased on function points, which are defined based on the one or moreextracted parameters and data objects of the competing users. Thesefunction points may contribute to the relative score calculation as perthe weighting assigned to them. In the example embodiment, the internalparameters are given a weighting of 60%, external parameters are given aweighting of 25%, historical parameters are given a weighting of 5% andrecommendations are given a weighting of 10%. The weighting of thefunction points assigned to the one or more internal parameters are:skill set—15 points, past experience—6 points, expected position—11points, expected salary—10 points. Further, the weighting of thefunction points assigned to the one or more external parameters are:season of applying—12 points and rarity of skill set—6 points. Further,the weighting of the function points for historical parameters is 3points and for the user's past employer's recommendations is 7 points.Thus, the relative score assigned to data object 300 of the user mayhave a score of 70, which is computed by the summation of the valuesassigned to these parameters. A person ordinarily skilled in the art mayrecognize that the numerical values provided in this example embodimentare merely for an example basis and do not limit the scope of theinvention.

Further, rule generator 206 may generate one or more rules to link dataobject 300 of the user with that of the one or more organizations thatmay fulfill the user requirement of attaining a job position. Computingmodule 210 may compute an absolute score based on the degree to whichthe user's job requirement may match the needs of the organizationoffering that job. In an embodiment of the present invention, thecomputation of the absolute score also includes assigning functionpoints with suitable weighting. In this case rule generator 206generates rules that match the skill set required by the organizationwith the skill set of the user, the minimum qualifications required bythe organization with that of the user, the competitor organizations andtheir hiring trends and the user's past experience. Based on the abovefactors, in this example embodiment, the user's data object 300 may beassigned an absolute score of 82, which indicates the availability ofthe user's job requiring needs being met. Further, the gross scorecomputed is based on the average of the relative and absolute scorecomputed. In the example embodiment, the gross score may be calculatedas a value 76.

FIG. 3D illustrates a table 306 that depicts the feedback given to theuser to enhance the one or more computed scores associated with dataobject 300. Feedback generator 212 may utilize the one or more computedscores and the one or more rules stored in rule base database 220 toprovide an option of changing one or more internal parameters and thusmay allow the user to improve his relative score. For example, thefeedback may include one or more suggestions such as, but not limitedto, that the user may do additional professional courses in computernetworking from the reputed institute ABC based on the fact that thecompeting user has done the same. Moreover, the feedback may alsoinclude suggestions such as, but not limited to, that if the userchanges his residence to Los Angeles, his chances of acquiring hisdesired job will increase by 5%. Further, the feedback may also indicatethat the user has a probability of achieving his desired job requirementin two months if the suitable amendments are made. The feedback may alsoindicate that the complexity of his past projects and recommendationsprovided by his previous employer may assist him to achieve his jobrequirement. In an embodiment of the present invention, if the userperforms one or more changes in data object 300 as per the suggestionsprovided by feedback generator 212, then computing module 210 mayre-compute the new relative and absolute score for the user.

Process

FIG. 4 is a flowchart illustrating an example process for enhancing oneor more computed scores associated with the data object.

At step 402, receiving module 202 may receive the one or more dataobjects from application server 110. In an embodiment of the presentinvention, a user may have submitted the data objects with applicationserver 110, by means of one or more web applications provided byapplication server 110. In one embodiment, the user may either be, butnot limited to, an individual or an organization. Further, the dataobjects may include one or more requirements. For example, in case ofthe user being an individual, the requirements of the user may include,but not limited to, to acquire a suitable job position, to buy anyconsumer product, to buy/sell services and/or products in an onlineenvironment and the like. Additionally, in case of the user being anorganization, the requirements of the user may include, but not limitedto, to acquire a suitable employee as per the vacant job position,provide suitable holiday packages to tourists, sell available productsor services to customers, and the like. Moreover, the data objects mayalso include one or more informational attributes associated with theuser, such as, but not limited to, social contacts, qualifications,business motive, products information, contact details and the like. Thedata object may be, without limitation, a word processor document, aPortable Document Format (PDF) file, a text file, a Hyper-Text MarkupLanguage (HTML) file, a Tagged Image File Format (TIFF) image or aPortable Network Graphics (PNG) image.

At step 404, extraction module 204 extracts the information included inthe data objects. In one embodiment, extraction module 204 may employmanual methods and/or electronically executed methods such as, but notlimited to, machine learning algorithms, neural networks, supervisedlearning, unsupervised learning, and the like; for converting theunstructured format of the data objects to a structured format and thusextract the information from the data objects. Machine learning is ascientific discipline concerned with the design and development ofalgorithms that allow computers to learn based on data, such as fromsensor data or databases.

In an embodiment, extraction module 204 may extract one or more internalparameters based on the information included in the data objects. In oneembodiment, extraction module 204 may employ electronically executedmethods to extract the internal parameters. In another embodiment, theinternal parameters can be extracted manually. The internal parametersare those parameters that are essential to the data object and arederived from the data objects submitted by the user. The internalparameters are stored in an internal parameter database 216 of knowledgebase 214. Enhancing module 112 may also include a domain analyzer 222that suitably identifies the domains and sub-domains that the dataobjects pertain to. Further, rule generator 206 may be used to convertthe one or more extracted parameters into suitable rules such that therules are stored in rule base database 220.

In one embodiment, extraction module 112 may also extract one or moreexternal parameters based on the information contained in the dataobject. External parameters include all those parameters that maydirectly or indirectly have an impact on the data objects submitted bythe user. External parameters may include, but not limited to, socialparameters, political parameters, socio-political parameters,environmental parameters, locational parameters, economic parameters,statistical comparative parameters, skill parameters, and the like thatare relevant to the domain that the data objects belongs to.

Further, the external parameters also include the statisticalcomparative analysis of the requirements of other data objects submittedby competing users that pertain to the same domain and/or sub domain ofthe user. This comparative analysis data may be gathered over time. Thiscomparative analysis data extracted may be used, but not limited to,compare the user's data object with that of one or more competing userdata objects.

Additionally, in an embodiment of the present invention, the historicalinformation pertaining to the same domain as the data object may also beconsidered as a parameter for the calculation of the one or more scoresassociated with the data object. In an embodiment, inputs and/orrecommendations provided by the user himself and/or other users may alsobe considered in the calculation of the one or more scores associatedwith the data object.

In one embodiment, rule generator 206 may convert the extracted internaland external parameters into one or more rules to make suitableinferences on the extracted information through these parameters.

Rule generator 206 is used to generate one or more rules that arise fromthe dependencies that exist in the parameters that affect the dataobjects. These one or more dependencies may exist between one or moreinternal parameters, external parameters, and further optionally betweenhistorical parameters and/or recommendations, or any combinationthereof. The parameters affecting the data objects are suitablyretrieved from the internal parameter database 216 and externalparameter database 218 of the knowledge base. Additionally, theinter-relationship or dependencies may be formed relating to theparameters that pertain to a single data object or a collection of oneor more data objects that belong to the same class identified by domainanalyzer 222. In one embodiment, an electronically executed methodand/or manual method may be used to derive these sets of rules, bytaking into consideration the relationships that may arise, bothdirectly and indirectly, from the parameters that may affect the dataobject or group of data objects that pertain to the same class or both.These rules may be generated by the mapping of the extracted parameters,which includes internal and external parameters, and inferreddependencies that are stored in rule base database 220 of knowledge base214.

At step 406, comparison module 208 may compare the one or more dataobjects of the user with that of the competing users for the samerequirements. In one embodiment, the data objects are compared based onthe information extracted from one or more internal and externalparameters. The comparison of these data objects may take place, but notlimited to, by comparing the one or more data objects that belong to thesame domain and/or sub domain identified by domain analyzer 222.

At step 408, computing module 210 may compute the one or more scoresbased at least on one of the comparison data received from comparisonmodule 208 and/or from the information extracted from the one or moreinternal parameters, external parameters, optionally includinghistorical parameters and/or recommendations. Computing module 210 mayretrieve the rules generated and stored in rule base database 220 tocompute, but not limited to, an absolute score and a relative score.These rules may either be generated by rule generator 206 or storedmanually by system administrator. Further, the extracted parameters maybe retrieved from the internal parameter database 216, externalparameter database 218 or any combination thereof

In one embodiment, the relative score associated with the data objectsis calculated based on, but not limited to, the internal parameters,external parameters, and the comparison data received from comparisonmodule 208. Thus, the relative score of data objects may provide thestanding of the data objects submitted by the user to that of other dataobjects submitted by competing users that belong to the same class asthat of the user's data object.

In one embodiment, the absolute score may be the measure of the degreeby which two comparable data objects, namely the user requirement withthe available service and/or product corresponding to the userrequirement, are similar. The absolute score is calculated based atleast in part on a comparison between the requirements included in thedata objects of the user and the complimental requirements included inthe data objects of the complimentary users. Moreover, in oneembodiment, absolute score may be calculated based on, but not limitedto, the extracted parameters that may belong to a group of one or moredata objects that may belong to the same class. Hence, the absolutescore of the data object may provide the measure of how closely theuser's requirements may be matched to the corresponding complementaryrequirements of another user (who provide the service and/or product tomatch the user requirement). In other words, the absolute score providesan indication of a likelihood of how the user fares against thecomplimentary requirements.

In one embodiment, computing module 210 may calculate a gross scorewhich may be the summation of the average of the absolute score and therelative score.

At step 410, feedback generator 212 may analyze the one or more scorescomputed by computing module 210 and provides a listing of the internalparameters, external parameters, optionally including historicalparameters, recommendations, or all, that need to be modified, improved,added or removed, in order to enhance the one or more scores associatedwith the data object.

In an embodiment of the present invention, if the user modifies the oneor more data objects, based on the suggestions from feedback generator212, then the computing module 210 may re-compute the one or more scoresassociated with the one or more data objects.

Enhancing Score System Architecture

FIG. 5 illustrates an example hardware system 500 to implement scoreenhancing system 112 according to one embodiment. Hardware system 500includes at least one processor 502, a system memory 504, and massstorage 506. The system memory 504 has stored therein one or moreapplication software, enhancing code 508 for implementing scoreenhancing system 112, an operating system and drivers directed to thefunctions described herein. Mass storage 506 provides permanent storagefor the data and enhancing code 508 for score enhancing system 112,whereas system memory 504 (e.g., DRAM) provides temporary storage forthe data and programming instructions when executed by processor 502.The process flow of the enhancing code 508 for score enhancing system112 is described in detail in conjunction with FIG. 4. In oneembodiment, knowledge base 114 may reside in mass storage 506. Anetwork/communication interface 510 provides communication betweenhardware system 500 and any of a wide range of networks, such as anEthernet (e.g., IEEE 802.3) network, etc. Additionally, hardware system500 includes a high performance input/output (I/O) bus 512 and astandard I/O bus 514. System memory 504 and network/communicationinterface 510 are coupled to bus 512. Mass storage 506 is coupled to bus514. I/O Bus Bridge 516 couples the two buses 512 and 514 to each other.

In one embodiment, process 400 described herein is implemented as aseries of software routines run by hardware system 500. These softwareroutines comprise a plurality or series of instructions to be executedby a processor in a hardware system, such as processor 502. Initially,the series of instructions are stored on a storage device, such as massstorage 506. However, the series of instructions can be stored on anysuitable storage medium, such as a diskette, CD-ROM, ROM, EEPROM, DVD,Blu-ray disk, etc. Furthermore, the series of instructions need not bestored locally, and could be received from a remote storage device, suchas server on a network, via network/communication interface 510. Theinstructions are copied from the storage device, such as mass storage506, into system memory 504 and then accessed and executed by processor502.

In one embodiment, hardware system 500 may also include I/O ports 518, akeyboard and pointing device 520, a display 522 coupled to bus 512. I/Oports 518 are one or more serial and/or parallel communication portsthat provide communication between additional peripheral devices, whichmay be coupled to hardware system 500. A host bridge 524 couplesprocessor 502 to high performance I/O interface 510. Hardware system 500may further include video memory (not shown) and a display devicecoupled to the video memory. Collectively, these elements are intendedto represent a broad category of computer hardware systems, includingbut not limited to general purpose computer systems based on thex86-compatible processors manufactured by Intel Corporation of SantaClara, Calif., and the x86-compatible processors manufactured byAdvanced Micro Devices (AMD), Inc., of Sunnyvale, Calif., as well as anyother suitable processor.

Hardware system 500 may include a variety of system architectures; andvarious components of hardware system 500 may be rearranged. Forexample, cache 526 may be on-chip with processor 502. Alternatively,cache 526 and processor 502 may be packed together as a “processormodule,” with processor 502 being referred to as the “processor core.”Furthermore, certain embodiments of the present invention may notrequire nor include all of the above components. For example, theperipheral devices shown coupled to standard I/O bus 512 may couple tohigh performance I/O interface 510. In addition, in some embodimentsonly a single bus may exist with the components of hardware system 500being coupled to the single bus. Furthermore, hardware system 500 mayinclude additional components, such as additional processors, storagedevices, or memories.

An operating system manages and controls the operation of hardwaresystem 500, including the input and output of data to and from softwareapplications (not shown). The operating system provides an interfacebetween the software applications being executed on the system and thehardware components of the system. According to one embodiment of thepresent invention, the operating system is the LINUX operating system.However, the present invention may be used with other suitable operatingsystems, such as the Windows 95/98/NT/XP/Server operating system,available from Microsoft Corporation of Redmond, Wash., the AppleMacintosh Operating System, available from Apple Computer Int. ofCupertino, Calif., UNIX operating systems, and the like.

The present invention has been explained with reference to specificembodiments. For example, while embodiments of the present inventionhave been described with reference to specific hardware and softwarecomponents, those skilled in the art will appreciate that differentcombinations of hardware and/or software components may also be used,and that particular operations described as being implemented inhardware might also be implemented in software or vice versa. Otherembodiments will be evident to those of ordinary skill in the art. It istherefore not intended that the present invention be limited, except asindicated by the appended claims.

What is claimed is:
 1. A method comprising: receiving, over a network, adata object that is associated with a user who is engaged in a searchfor employment, wherein the data object includes a résumé of the userand a requirement that is associated with the search; calculating, basedon the data object, a score that indicates a likelihood of receiving anoffer for an employment position that satisfies the requirement, whereinthe score includes an estimated duration until the user receives theoffer; generating a suggestion that identifies how the score may beincreased; and sending the suggestion over the network to a computingdevice of the user; wherein the method is performed by one or morecomputing devices.
 2. The method of claim 1, further comprising sendingthe score over the network to the computing device.
 3. The method ofclaim 2 wherein the suggestion includes an estimated reduction of theestimated duration if the suggestion is fulfilled.
 4. The method ofclaim 1 wherein the suggestion includes an estimated increase of thescore if the suggestion is fulfilled.
 5. The method of claim 1, furthercomprising comparing the data object with a second data object of asecond user, wherein the suggestion identifies a modification that, ifmade, would result in a higher score than a score of the second user. 6.The method of claim 1 wherein the suggestion comprises an attribute of asecond user.
 7. The method of claim 6 wherein the attribute of thesecond user comprises an identification of a professional improvementcourse that the second user has taken.
 8. The method of claim 1 whereinthe suggestion identifies a professional improvement course.
 9. Themethod of claim 1 wherein calculating or generating is based on dataobtained from a user profile of a social networking website.
 10. Themethod of claim 9 wherein the data obtained comprises at least one of: aprofessional reference, a skill, or a career objective.
 11. The methodof claim 1, wherein calculating or generating comprises calculating orgenerating based on an amount of page views of a webpage.
 12. The methodof claim 1 wherein: the requirement comprises a locale and a desiredemployment position; and calculating or generating comprises calculatingor generating based on employment market conditions in the locale of thedesired employment position.
 13. The method of claim 12 wherein: therequirement comprises a desired locale that indicates where the userdesires to work; the suggestion identifies an alternate locale for thedesired employment position, wherein the alternate locale is differentthan the desired locale.
 14. The method of claim 1 wherein thesuggestion identifies a skill.
 15. The method of claim 1 whereincalculating or generating comprises calculating or generating based on aranking of an academic institution.
 16. The method of claim 1 whereincalculating or generating comprises calculating or generating based on aself-rating by the user.
 17. The method of claim 1 wherein: the résumécomprises a plurality of parameters; and the method further comprisesdetermining a parameter score for each of the plurality of parameters;the parameter score is based on a respective parameter weight; whereincalculating comprises calculating based on the parameter score of eachof the plurality of parameters.
 18. The method of claim 1 wherein therequirement comprises at least one of: one or more preferred employers,a salary range, or an amount of work hours desired.
 19. A systemcomprising: one or more processors; one or more storage media storinginstructions which, when executed by the one or more processors, cause:receiving, over a network, a data object that is associated with a userwho is engaged in a search for employment, wherein the data objectincludes a résumé of the user and a requirement that is associated withthe search; calculating, based on the data object, a score thatindicates a likelihood of receiving an offer for an employment positionthat satisfies the requirement, wherein the score includes an estimatedduration until the user receives the offer; generating a suggestion thatidentifies how the score may be increased; and sending the suggestionover the network to a computing device of the user.
 20. One or morecomputer readable media comprising instructions that, when executed byone or more processors, cause: receiving, over a network, a data objectthat is associated with a user who is engaged in a search foremployment, wherein the data object includes a résumé of the user and arequirement that is associated with the search; calculating, based onthe data object, a score that indicates a likelihood of receiving anoffer for an employment position that satisfies the requirement, whereinthe score includes an estimated duration until the user receives theoffer; generating a suggestion that identifies how the score may beincreased; and sending the suggestion over the network to a computingdevice of the user.